package com.soft.javase.day02.practice.game;

/**
 * @author yzg
 * @desc TODO
 * @date 2025/4/16
 */
public class Test {
    public static void main(String[] args) {
        // 创建英雄
        Hero hero = new Hero("凯", 10, 500, 90, 50, "人类");

        // 创建装备
        Equip sword = new Equip("无尽之刃", 10, "金色", "武器", 30, 10);
        Equip armor = new Equip("不祥征兆", 8, "橘黄色", "防具", 5, 30);
        Equip ring = new Equip("力量戒指", 5, "蓝色", "饰品", 10, 5);

        // 英雄装备
        hero.addEquip(sword);
        hero.addEquip(armor);
        hero.addEquip(ring);

        // 创建怪兽
        Monster monster = new Monster("哥斯拉", 15, 800, 120, 80, "兽族");

        // 显示角色信息
        hero.show();
        monster.show();

        // 战斗开始
        System.out.println("========== 战斗开始 =========");
        int round = 1;

        while (true) {
            System.out.println("\n---- 第 " + round + " 回合 ----");

            // 英雄攻击
            hero.attack(monster);
            if (monster.isDead()) {
                System.out.println(monster.getName() + " 已被击败！");
                break;
            }

            // 怪兽攻击
            monster.attack(hero);
            if (hero.isDead()) {
                System.out.println(hero.getName() + " 已被击败！");
                break;
            }

            // 显示当前状态
            System.out.println("\n战斗状态:");
            System.out.println(hero.getName() + " 剩余血量: " + hero.getBlood());
            System.out.println(monster.getName() + " 剩余血量: " + monster.getBlood());

            round++;
        }

        System.out.println("\n===== 战斗结束 =====");
        System.out.println("总回合数: " + round);
    }

}
